﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x020010DD RID: 4317
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class SceneNpcInfo : IMessage<SceneNpcInfo>, IMessage, IEquatable<SceneNpcInfo>, IDeepCloneable<SceneNpcInfo>, IBufferMessage
	{
		// Token: 0x170036B2 RID: 14002
		// (get) Token: 0x0600C128 RID: 49448 RVA: 0x0020ACED File Offset: 0x00208EED
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<SceneNpcInfo> Parser
		{
			get
			{
				return SceneNpcInfo._parser;
			}
		}

		// Token: 0x170036B3 RID: 14003
		// (get) Token: 0x0600C129 RID: 49449 RVA: 0x0020ACF4 File Offset: 0x00208EF4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return SceneNpcInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x170036B4 RID: 14004
		// (get) Token: 0x0600C12A RID: 49450 RVA: 0x0020AD06 File Offset: 0x00208F06
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return SceneNpcInfo.Descriptor;
			}
		}

		// Token: 0x0600C12B RID: 49451 RVA: 0x0020AD0D File Offset: 0x00208F0D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneNpcInfo()
		{
		}

		// Token: 0x0600C12C RID: 49452 RVA: 0x0020AD18 File Offset: 0x00208F18
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneNpcInfo(SceneNpcInfo other) : this()
		{
			this.npcId_ = other.npcId_;
			this.extraInfo_ = ((other.extraInfo_ != null) ? other.extraInfo_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600C12D RID: 49453 RVA: 0x0020AD64 File Offset: 0x00208F64
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneNpcInfo Clone()
		{
			return new SceneNpcInfo(this);
		}

		// Token: 0x170036B5 RID: 14005
		// (get) Token: 0x0600C12E RID: 49454 RVA: 0x0020AD6C File Offset: 0x00208F6C
		// (set) Token: 0x0600C12F RID: 49455 RVA: 0x0020AD74 File Offset: 0x00208F74
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint NpcId
		{
			get
			{
				return this.npcId_;
			}
			set
			{
				this.npcId_ = value;
			}
		}

		// Token: 0x170036B6 RID: 14006
		// (get) Token: 0x0600C130 RID: 49456 RVA: 0x0020AD7D File Offset: 0x00208F7D
		// (set) Token: 0x0600C131 RID: 49457 RVA: 0x0020AD85 File Offset: 0x00208F85
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public NpcExtraInfo ExtraInfo
		{
			get
			{
				return this.extraInfo_;
			}
			set
			{
				this.extraInfo_ = value;
			}
		}

		// Token: 0x0600C132 RID: 49458 RVA: 0x0020AD8E File Offset: 0x00208F8E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as SceneNpcInfo);
		}

		// Token: 0x0600C133 RID: 49459 RVA: 0x0020AD9C File Offset: 0x00208F9C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(SceneNpcInfo other)
		{
			return other != null && (other == this || (this.NpcId == other.NpcId && object.Equals(this.ExtraInfo, other.ExtraInfo) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600C134 RID: 49460 RVA: 0x0020ADEC File Offset: 0x00208FEC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.NpcId != 0U)
			{
				num ^= this.NpcId.GetHashCode();
			}
			if (this.extraInfo_ != null)
			{
				num ^= this.ExtraInfo.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600C135 RID: 49461 RVA: 0x0020AE41 File Offset: 0x00209041
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600C136 RID: 49462 RVA: 0x0020AE49 File Offset: 0x00209049
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600C137 RID: 49463 RVA: 0x0020AE54 File Offset: 0x00209054
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.NpcId != 0U)
			{
				output.WriteRawTag(56);
				output.WriteUInt32(this.NpcId);
			}
			if (this.extraInfo_ != null)
			{
				output.WriteRawTag(82);
				output.WriteMessage(this.ExtraInfo);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600C138 RID: 49464 RVA: 0x0020AEB0 File Offset: 0x002090B0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.NpcId != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.NpcId);
			}
			if (this.extraInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.ExtraInfo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600C139 RID: 49465 RVA: 0x0020AF08 File Offset: 0x00209108
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(SceneNpcInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.NpcId != 0U)
			{
				this.NpcId = other.NpcId;
			}
			if (other.extraInfo_ != null)
			{
				if (this.extraInfo_ == null)
				{
					this.ExtraInfo = new NpcExtraInfo();
				}
				this.ExtraInfo.MergeFrom(other.ExtraInfo);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600C13A RID: 49466 RVA: 0x0020AF70 File Offset: 0x00209170
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600C13B RID: 49467 RVA: 0x0020AF7C File Offset: 0x0020917C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 56U)
				{
					if (num != 82U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						if (this.extraInfo_ == null)
						{
							this.ExtraInfo = new NpcExtraInfo();
						}
						input.ReadMessage(this.ExtraInfo);
					}
				}
				else
				{
					this.NpcId = input.ReadUInt32();
				}
			}
		}

		// Token: 0x04004E0B RID: 19979
		private static readonly MessageParser<SceneNpcInfo> _parser = new MessageParser<SceneNpcInfo>(() => new SceneNpcInfo());

		// Token: 0x04004E0C RID: 19980
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004E0D RID: 19981
		public const int NpcIdFieldNumber = 7;

		// Token: 0x04004E0E RID: 19982
		private uint npcId_;

		// Token: 0x04004E0F RID: 19983
		public const int ExtraInfoFieldNumber = 10;

		// Token: 0x04004E10 RID: 19984
		private NpcExtraInfo extraInfo_;
	}
}
